﻿using System;
using GroceryList.Domain.Model.GroceryList;
using GroceryList.Domain.Repositories;
using NHibernate;

namespace GroceryList.Model.Repositories
{
    public class ListaCompraRepository : BaseRepository<ListaCompra>, IListaCompraRepository
    {

        public ListaCompraRepository(ISession session)
            : base(session)
        {
        }

        public ListaCompra Single(Guid codigo)
        {
            return 
                _session.QueryOver<ListaCompra>().
                    Where(lc => lc.Codigo == codigo).
                    SingleOrDefault();
        }

        public void BorrarDetalles(DetalleProducto detalle)
        {
            _session.Delete(detalle);
            _session.Flush();

        }

        public void Delete(ListaCompra lista)
        {
            _session.Delete(lista);
            _session.Flush();
        }
    }
}